#pragma comment。将一个注释记录放置到对象文件或可执行文件中。 #pragma pack。用来改变编译器的字节对齐方式。 #pragma code_seg。它能够设置程序中的函数在obj文件中所在的代码段。如果未指定参数,函数将放置在默认代码段.text中 #pragma once。保证所在文件只会被包含一次,它是基于磁盘文件的,而#ifndef则是基于宏的。 文件指针指向的是一块内存区域,这块区域存储着打开的文件的相关信息,包括文件读取指针当前位置、文件读取缓冲区大小等信息,并不是指向文件的。fsc…

2018年1月11日 0条评论 1756点热度 0人点赞 icebmji 阅读全文

C++new操作符带不带括号区别 https://www.zhihu.com/question/35843839 类的空指针的成员函数调用 #include using namespace std; class A{ public: void test() { printf("test A"); } }; int main(){ A* pA = NULL; pA->test(); return 0; } 上面的程序是合法的,C++在编译期间,就找到了pA的函数,发现test非虚函数,并且在其中没有对this指…

2017年12月8日 0条评论 3019点热度 0人点赞 icebmji 阅读全文

学习linux在centos7上遇到了一些问题,网上的教程有些在centos7上并不好用,记下来搜到的,以免以后忘记 永久修改hostname 利用命令hostname yourname 修改是暂时的,重启失效,这是适应centos7 但修改/etc/sysconfig/network下的HOSTNAME 在centos7就失效了 修改/proc/sys/kernel/hostanme 也是暂时的,因为在内存中 centos7给出的新命令是hostnamectl,使用hostnamectl set-hostname…

2017年10月13日 0条评论 2864点热度 0人点赞 icebmji 阅读全文

const的作用是使对象至少在运行期间是常量 首先const并非只有两层,如:const int *const*const*const p=nullptr;其实也无需多的抠概念只要知道哪个const修饰的是哪个对象,它的作用是什么,自然就知道很清楚了 1. 永远从右往左读一个变量声明。 2. const永远修饰const出现地点左边的声明类型。 3. 如果左边没有声明类型,就修饰右边。 举例:const int * const p=nullptr; 红const修饰int * 即p是常量,蓝const 修饰int …

2017年10月7日 0条评论 2499点热度 0人点赞 icebmji 阅读全文

link error : 一般是库的链接出错 ERROR LNK2019:无法解析的外部的符号 __vsnwprintf_s,或者是_sscanf,_sscanf_s 。 vs2015默认编译时将许多标准库采用内联方式处理,因而没有可以链接的标准库文件,所以要专门添加标准库文件来链接标准库中的函数。只要在链接器->附加依赖项 加上 legacy_stdio_definitions.lib 或在工程中加上#pragma comment(lib,"legacy_stdio_definitions.lib") C中…

2017年9月27日 0条评论 3346点热度 0人点赞 icebmji 阅读全文

源码及生成的项目下载:自订图片路径:D:\vs2017\1.png 先上效果图: 图片可以自定,原理是利用插件设定vs的背景,然后再调整vs的主题,将主题设为透明。 所需要的工具:vs2017 可以直接使用vs社区的插件:ClaudialIDE或MoeIDE来设置背景,ColorTheme来设置颜色,在vs扩展商店搜下就找到了 新建vs工程: vs2017最近的更新把很多项目新建都变了,以前是直接在:其它->Visual Studio Package工程,现在是在c#中,如图。如果没有C#或该项目模板就去安装…

2017年9月26日 0条评论 8874点热度 0人点赞 icebmji 阅读全文