1 IntelliSense: member "Boy::pNext" (declared at line 10 of "c:\users\administrator\documents\visual studio 2013\projects\josephus(面对对象)\josephus(面对对象)\Boy.h") is inaccessible c:\Users\Administrator\Documents\Visual Studio 2013\Projects\josephus(面对对象)\josephus(面对对象)\Ring.cpp 17 31 josephus(面对对象)
时间: 2023-08-25 19:05:13 浏览: 51
这个错误提示是因为在 `Ring.cpp` 文件中访问了 `Boy` 类的 `pNext` 成员变量,但是该成员变量在 `Boy.h` 文件中是被保护的,只能在 `Boy` 类及其子类中访问,不能在其他类中直接访问。因此,你需要在 `Boy` 类中添加一个公有的成员函数,用于返回 `pNext` 成员变量的值,然后在 `Ring.cpp` 中调用该函数来获取 `pNext` 成员变量的值。
你可以在 `Boy.h` 文件中添加以下公有成员函数:
```
Boy* getNext() { return pNext; }
```
然后在 `Ring.cpp` 文件中使用以下代码来获取 `pNext` 成员变量的值:
```
pB = new Boy(pB, i);
pB->getNext(); // 获取 pNext 成员变量的值
```
这样就可以解决这个错误了。
相关问题
1 IntelliSense: 不允许使用数据成员初始值设定项 c:\users\36249\documents\visual studio 2010\projects\2048游戏\2048.cpp 14
根据提供的引用内容,我无法回答你关于IntelliSense的问题。因为引用是关于使用Windows Presentation Foundation构建归纳用户界面的,引用是关于在XML中传递二进制数据的C#示例。而你的问题涉及到C++代码中的IntelliSense错误。请提供更多关于你的问题的信息,以便我能够更好地帮助你。
pDC->TextOutW(100,100,"Wd"); 1 IntelliSense: 未定义标识符 "pDC" c:\users\administrator\documents\visual studio 2010\projects\9\9\9view.cpp 61
根据你提供的代码,错误信息显示"pDC"未定义标识符。这通常是因为在当前作用域中没有声明或定义变量"pDC"导致的。
要解决这个问题,你需要确保在使用"pDC"之前,已经声明并正确地初始化了它。通常,在使用"pDC"之前,你需要从某个地方获取一个有效的设备上下文对象。例如,在MFC框架中,你可以通过重写CView类的OnDraw函数来获取设备上下文对象。
以下是一个示例代码片段,演示了如何使用pDC->TextOutW函数来在视图窗口上绘制文本:
```cpp
void CMyView::OnDraw(CDC* pDC)
{
CView::OnDraw(pDC);
// 绘制文本
pDC->TextOutW(100, 100, L"Wd");
}
```
请注意,上述代码假设你正在使用MFC框架,并且CMyView是一个派生自CView的自定义视图类。如果你不是使用MFC框架或者在其他环境中工作,请提供更多上下文信息,以便我能够提供更准确的解决方案。