相关疑难解决方法(0)

头文件中的C++代码

我使用C++的个人风格总是把类声明放在一个包含文件中,并在.cpp文件中定义,非常类似于Loki对C++头文件,代码分离的回答.不可否认,我喜欢这种风格的部分原因可能与我花费编码Modula-2和Ada的所有年份有关,两者都有与规范文件和正文文件类似的方案.

我有一个同事,比我更了解C++,他坚持认为所有的C++声明应尽可能在头文件中包含定义.他并不是说这是一种有效的替代风格,甚至是一种稍微好一点的风格,而是这是每个人现在都用于C++的新普遍接受的风格.

我不像以前那样柔软,所以我并不急于拼抢他的这个潮流,直到我看到更多的人和他在一起.那个成语真的有多常见?

只是给出答案的一些结构:它现在是The Way,非常常见,有点普遍,不常见,还是出错?

c++ coding-style code-separation

183
推荐指数
11
解决办法
11万
查看次数

在头文件中实现类的优点和缺点是什么?

我喜欢DRY的概念(不要重复自己[oops]),但C++的头文件概念违背了这种编程规则.完全在头文件中定义一个类成员有什么缺点吗?如果对模板做的是正确的,为什么不对正常的类?我有一些缺点和好处的想法,但你的是什么?

c++

11
推荐指数
4
解决办法
1万
查看次数

如果用C++在单个文件中编写整个类,会发生什么样的坏事?

在C#或Java中,类是同时声明和定义的.在C++中,规范是分开执行.如果我们将整个类写在一个文件中,例如.cpp文件并将其包含在引用它的文件中,除了延长编译过程之外,技术上会发生什么样的坏事呢?

c++ class

11
推荐指数
2
解决办法
528
查看次数

如何在CMake中使用c ++ 20模块?

ClangMSVC已经支持来自未完成的C ++ 20标准的Modules TS。我可以使用CMake或其他构建系统来构建基于模块的项目吗?

我尝试过build2,它支持模块并且运行良好,但是我对它的依赖项管理有疑问(UPD:问题已结案)。

c++ cmake c++20 c++-modules

8
推荐指数
4
解决办法
657
查看次数

在C或C++中没有标题编码的客观原因是什么?

可能重复:
编写没有标题的C++,最佳做法?

这个问题的启发- OP只是发现标题混淆和令人沮丧的概念,这是他的主观​​体验.

现在有没有客观原因和方案来避免在C或C++编码时的标题?

c c++ header header-files

2
推荐指数
1
解决办法
320
查看次数

包含头文件

我有一个functions.h名为....现在我知道,这是不明智的头文件来定义功能,但相比其突然出现的问题是我最不关心的...

我在一个名为的functions.h中定义了一个函数

 void sayhi()
{
  cout<<"hi";
}
Run Code Online (Sandbox Code Playgroud)

现在我创建了一个lines.h文件,其函数在lines.cpp文件中定义...在lines.cpp文件中我包含了functions.h ...并使用了sayhi(); 在line类的构造函数中...然后在mymain.cpp(包含int main)中我再次包含functions.h,在main中我称为sayhi();

但是当我编译它表现出mymain.cpp告知的sayHi()一个错误的程序已经被定义在lines.obj ...ü可以指出我在做什么错?

c++ header-files visual-c++

2
推荐指数
1
解决办法
171
查看次数