Can structs have methods?

Asked by Last Modified  

3 Answers

Learn Java

Follow 2
Answer

Please enter your answer

Wroking in IT industry from last 15 years and and trained more than 5000+ Students. Conact ME

Yes, structs in languages like Go and C++ can have methods, but not in C.
Comments

I am online Quran teacher 7 years

A struct can also have static methods.
Comments

Developer and Computer Science graduate from Vellore Institute of Technology, Chennai, India

Yes, structs can have methods in C++, C#, and even C (with function pointers), but their behavior differs: C (No Direct Methods) C structs cannot have methods, but function pointers can be used as a workaround. c #include <stdio.h> typedef struct { int x, y; void (*print)(int, int);...
read more
Yes, structs can have methods in C++, C#, and even C (with function pointers), but their behavior differs: C (No Direct Methods) C structs cannot have methods, but function pointers can be used as a workaround. c #include <stdio.h> typedef struct { int x, y; void (*print)(int, int); } Point; void printPoint(int x, int y) { printf("Point: (%d, %d)\n", x, y); } int main() { Point p = {10, 20, printPoint}; p.print(p.x, p.y); return 0; } C++ (Structs Can Have Methods) C++ treats structs like classes (default access is public), allowing methods, constructors, destructors, and operator overloading. cpp #include <iostream> using namespace std; struct Point { int x, y; void print() { cout << "Point: (" << x << ", " << y << ")" << endl; } }; int main() { Point p = {10, 20}; p.print(); return 0; } C# (Structs Can Have Methods) C# structs support methods, properties, and constructors (except parameterless constructors). They cannot inherit from classes but can implement interfaces. csharp using System; struct Point { public int X, Y; public Point(int x, int y) { X = x; Y = y; } public void Print() { Console.WriteLine($"Point: ({X}, {Y})"); } } class Program { static void Main() { Point p = new Point(10, 20); p.Print(); } } Summary C: No direct methods, but function pointers can be used. C++: Structs behave like lightweight classes and support methods. C#: Structs can have methods, properties, and constructors, but no inheritance from classes. Each language uses structs differently based on its design principles. read less
Comments

View 1 more Answers

Related Questions

I would like to apply as java trainer
Good Luck!! Best decision to share knowledge!!!
Ritika
Why do many software engineers not like Java?
Opinions on programming languages can vary, but some software engineers may express dissatisfaction with Java for reasons such as perceived verbosity, boilerplate code, and a slower pace of language evolution...
Guruprasad
0 0
5
Do I need to import java.lang package any time? Why?
No, you don't need to import it at any time. As this is part of java.lang package is a part of \jdk1.6.0_11{this is the location f your jdk installation directory}\jre\lib\rt.jar and this rt.jar (called...
Anitha
Why string objects are immutable?
Strings are immutable once created cannot be changed and hence cannot be eliminated but string builders are mutable.
Sujatha
What are the necessary qualifications needed for a Java tutor?
Degree in computer science and good knowledge of Java.
Darshan
0 0
7

Now ask question in any of the 1000+ Categories, and get Answers from Tutors and Trainers on UrbanPro.com

Ask a Question

Related Lessons

Palindrome Number : Java Function
An easier way to find out whether a number is a Palindrome number or not. Eg. 121, 88, 12321 etc public boolean isPalindrome ( int n ) { int rev = 0, r; for( i = n; i > 0; i /= 10 ) { r...

Class and Objects in Java
Class is a template or a blueprint which is used to describe an object. On other hand Object is a reference of a class which follows all the stuff written inside the class. How about taking the whole tour in the following video

Java : Command Line Arguments
The parameters which are provided to the program at the command line. Eg:d:\>java a 10 20 30 Here,“java” is an interpreter, “a” is filename,10,20,30 are arguments passed to...
S

Svg Reddy

0 0
0

ClassNotFoundException vs NoClassDefFoundError
ClassNotFoundException NoClassDefFoundError It is an exception and happens due to programmer’s mistake and can be recovered by updating the code. Thrown when an application tries...

Object Oriented Programming Concepts :
Class : Class is user defined data type. Class is a logical representation of an Object. That means Class is used to define an object, how you want to create your software object. For Example...

Recommended Articles

Java is the most famous programming language till date. 20 years is a big time for any programming language to survive and gain strength. Java has been proved to be one of the most reliable programming languages for networked computers. source:techcentral.com Java was developed to pertain over the Internet. Over...

Read full article >

Java is the most commonly used popular programming language for the creation of web applications and platform today. Integrated Cloud Applications and Platform Services Oracle says, “Java developers worldwide has over 9 million and runs approximately 3 billion mobile phones”.  Right from its first implication as java 1.0...

Read full article >

In the domain of Information Technology, there is always a lot to learn and implement. However, some technologies have a relatively higher demand than the rest of the others. So here are some popular IT courses for the present and upcoming future: Cloud Computing Cloud Computing is a computing technique which is used...

Read full article >

Designed in a flexible and user-friendly demeanor, Java is the most commonly used programming language for the creation of web applications and platform. It allows developers to “write once, run anywhere” (WORA). It is general-purpose, a high-level programming language developed by Sun Microsystem. Initially known as an...

Read full article >

Looking for Java Training Classes?

Learn from the Best Tutors on UrbanPro

Are you a Tutor or Training Institute?

Join UrbanPro Today to find students near you